[C - Socket] UDP SERVER
Publicado por Enzo de Brito Ferber 10/03/2006
[ Hits: 10.444 ]
Homepage: http://www.maximasonorizacao.com.br
Este script testei na minha
propria máquina em terminas
diferentes, mas creio eu que
funcionará em uma rede local.
Como fazer funcionar:
Compile o script:
cc -o server server.c
Abra um terminal (xterm)
Execute o servidor.
Abra outro terminal (xterm)
Execute o cliente
P.S.: O cliente está em outro
link
#include <stdio.h> #include <stdlib.h> #include <netdb.h> #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #define PORT 3456 #define MAX_CONNECTS_TRY 10 int main(int argc, char *argv[]){ int fd1, fd2; int num_b; int bind_return; int listen_return; int sin_size; //para passar endereco para funcao accept() int msg_size; char msg[100]; char hostname[30]; struct sockaddr_in client; struct sockaddr_in host; gethostname(hostname, 30); printf("Seu HOSTNAME: %s\n\n", hostname); fd1 = socket(AF_INET, SOCK_DGRAM, 0); if(fd1 == -1){ perror("socket"); exit(1); } client.sin_family = AF_INET; client.sin_port = htons(PORT); client.sin_addr.s_addr = INADDR_ANY; //poe o endeco do meu computador automaticamente bind_return = bind(fd1, (struct sockaddr *)&client, sizeof(struct sockaddr)); if(bind_return == -1){ perror("bind"); exit(1); } while(strcmp("exit", msg) != 0){ memset(msg, 0x0, 100); sin_size = sizeof(host); msg_size = recvfrom(fd1, msg, 100, 0, (struct sockaddr *)&host, &sin_size); printf("Mensagem de:%s: %s\n", inet_ntoa(host.sin_addr), msg); } }
Simples servidor http com concorrência feito em C
Programa em C para monitorar IPs e portas ativas
Robo HTTP usando socket e código multiplataforma
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta